/*     */ package eos.moe.dragoncore;
/*     */ 
/*     */ import java.io.BufferedReader;
/*     */ import java.io.DataInputStream;
/*     */ import java.io.File;
/*     */ import java.io.IOException;
/*     */ import java.io.InputStream;
/*     */ import java.io.InputStreamReader;
/*     */ import java.net.URL;
/*     */ import java.nio.FloatBuffer;
/*     */ import java.util.ArrayList;
/*     */ import java.util.Collection;
/*     */ import java.util.HashMap;
/*     */ import java.util.List;
/*     */ import java.util.Map;
/*     */ import java.util.stream.Collectors;
/*     */ import net.minecraft.client.renderer.OpenGlHelper;
/*     */ import net.minecraft.util.ResourceLocation;
/*     */ import org.lwjgl.BufferUtils;
/*     */ import org.lwjgl.opengl.ARBBufferObject;
/*     */ import org.lwjgl.opengl.GL11;
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ public class hs
/*     */ {
/*     */   public iy o;
/*     */   public ArrayList<xx> y;
/*     */   public ArrayList<fu> h;
/*     */   public ArrayList<bv> u;
/*     */   public HashMap<String, bv> j;
/*     */   public HashMap<String, kz> c;
/*     */   public HashMap<kz, ArrayList<xx>> r;
/*     */   public rv f;
/*     */   
/*     */   public hs(hs hs1, iy iy1) {
/*  38 */     this.y = new ArrayList<>(0);
/*  39 */     this.h = new ArrayList<>(0);
/*  40 */     this.u = new ArrayList<>(0);
/*  41 */     this.j = new HashMap<>();
/*  42 */     this.s = 0;
/*  43 */     this.l = -1;
/*  44 */     this.d = -1;
/*  45 */     this.z = -1;
/*  46 */     this.i = -1;
/*  47 */     this.o = iy1;
/*  48 */     this.m = hs1.m;
/*  49 */     for (xx xx : hs1.y) {
/*  50 */       fu[] arrayOfFu = new fu[xx.w.length];
/*  51 */       for (int j = 0; j < arrayOfFu.length; j++) {
/*  52 */         fu fu = new fu(xx.w[j]);
/*  53 */         ux.v(this.h, fu.t);
/*  54 */         this.h.set(fu.t, fu);
/*     */       } 
/*     */     } 
/*  57 */     this.y.addAll((Collection<? extends xx>)hs1.y.stream().map(xx1 -> new xx(xx1, this.h)).collect(Collectors.toList())); int i;
/*  58 */     for (i = 0; i < hs1.u.size(); i++) {
/*  59 */       bv bv1 = hs1.u.get(i);
/*  60 */       this.u.add(new bv(bv1, null, this));
/*     */     } 
/*  62 */     for (i = 0; i < hs1.u.size(); i++) {
/*  63 */       bv bv1 = hs1.u.get(i);
/*  64 */       bv1.j.v(bv1, this.u);
/*     */     } 
/*  66 */     this.t = hs1.t.j;
/*  67 */     iy1.sendBoneData(this);
/*     */   }
/*     */   private int s; public boolean m; public int l; public bv t; public int d; public int z; public int i; private FloatBuffer w; private FloatBuffer q;
/*     */   public hs(iy iy1, ResourceLocation resourceLocation) throws us {
/*  71 */     this.y = new ArrayList<>(0);
/*  72 */     this.h = new ArrayList<>(0);
/*  73 */     this.u = new ArrayList<>(0);
/*  74 */     this.j = new HashMap<>();
/*  75 */     this.s = 0;
/*  76 */     this.l = -1;
/*  77 */     this.d = -1;
/*  78 */     this.z = -1;
/*  79 */     this.i = -1;
/*  80 */     this.o = iy1;
/*  81 */     this.m = false;
/*  82 */     if (resourceLocation.func_110623_a().endsWith(".bmd")) {
/*  83 */       v(resourceLocation, (hs)null);
/*     */     } else {
/*  85 */       z(resourceLocation, (hs)null);
/*     */     } 
/*  87 */     h();
/*  88 */     z();
/*  89 */     iy1.sendBoneData(this);
/*  90 */     iy.v("Number of vertices = " + this.h.size());
/*     */   }
/*     */   
/*     */   public hs(iy iy1, ResourceLocation resourceLocation, hs hs1) throws us {
/*  94 */     this.y = new ArrayList<>(0);
/*  95 */     this.h = new ArrayList<>(0);
/*  96 */     this.u = new ArrayList<>(0);
/*  97 */     this.j = new HashMap<>();
/*  98 */     this.s = 0;
/*  99 */     this.l = -1;
/* 100 */     this.d = -1;
/* 101 */     this.z = -1;
/* 102 */     this.i = -1;
/* 103 */     this.o = iy1;
/* 104 */     this.m = true;
/* 105 */     if (resourceLocation.func_110623_a().endsWith(".bmd")) {
/* 106 */       v(resourceLocation, hs1);
/*     */     } else {
/* 108 */       z(resourceLocation, hs1);
/*     */     } 
/* 110 */     h();
/* 111 */     z();
/* 112 */     iy1.sendBoneData(this);
/*     */   }
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */   
/*     */   public void v(rv rv1) {
/* 397 */     this.f = rv1;
/*     */   }
/*     */   
/*     */   public bv v(int i) {
/*     */     try {
/* 402 */       return this.u.get(i);
/* 403 */     } catch (IndexOutOfBoundsException indexOutOfBoundsException) {
/* 404 */       return null;
/*     */     } 
/*     */   }
/*     */   
/*     */   public bv v(String str) {
/* 409 */     for (bv bv1 : this.u) {
/* 410 */       if (bv1.c.equals(str)) {
/* 411 */         return bv1;
/*     */       }
/*     */     } 
/* 414 */     return null;
/*     */   }
/*     */   
/*     */   public nu v() {
/* 418 */     return (this.f == null) ? null : ((this.f.l == null) ? null : (this.f.l.isEmpty() ? null : this.f.l.get(this.f.d)));
/*     */   }
/*     */   
/*     */   public void v() {
/* 422 */     this.h.forEach(fu::h);
/*     */   }
/*     */ 
/*     */   
/*     */   public void h(boolean bool, float f) {
/* 427 */     boolean bool1 = true;
/*     */ 
/*     */ 
/*     */     
/* 431 */     if (!OpenGlHelper.func_176075_f()) {
/* 432 */       GL11.glBegin(4);
/* 433 */       if (!this.o.q) {
/* 434 */         for (xx xx : this.y) {
/* 435 */           xx.v(bool1);
/*     */         }
/*     */       } else {
/* 438 */         for (Map.Entry<kz, ArrayList<xx>> entry : this.r.entrySet()) {
/* 439 */           if (entry.getKey() == null) {
/*     */             continue;
/*     */           }
/* 442 */           ((kz)entry.getKey()).z();
/* 443 */           for (xx xx : entry.getValue()) {
/* 444 */             xx.v(bool1);
/*     */           }
/* 446 */           ((kz)entry.getKey()).v();
/*     */         } 
/*     */       } 
/* 449 */       GL11.glEnd();
/*     */     } else {
/* 451 */       if (bool) {
/* 452 */         if (this.d == -1) {
/* 453 */           this.d = ARBBufferObject.glGenBuffersARB();
/* 454 */           this.z = ARBBufferObject.glGenBuffersARB();
/* 455 */           this.i = ARBBufferObject.glGenBuffersARB();
/* 456 */           v(bool1, f);
/*     */         } else {
/* 458 */           z(bool1, f);
/*     */         } 
/*     */       }
/* 461 */       OpenGlHelper.func_176072_g(OpenGlHelper.field_176089_P, this.d);
/* 462 */       GL11.glVertexPointer(3, 5126, 0, 0L);
/* 463 */       OpenGlHelper.func_176072_g(OpenGlHelper.field_176089_P, this.z);
/* 464 */       GL11.glTexCoordPointer(2, 5126, 0, 0L);
/* 465 */       OpenGlHelper.func_176072_g(OpenGlHelper.field_176089_P, this.i);
/* 466 */       GL11.glNormalPointer(5126, 0, 0L);
/* 467 */       GL11.glEnableClientState(32884);
/* 468 */       GL11.glEnableClientState(32888);
/* 469 */       GL11.glEnableClientState(32885);
/* 470 */       GL11.glDrawArrays(4, 0, this.y.size() * 3);
/* 471 */       GL11.glDisableClientState(32884);
/* 472 */       GL11.glDisableClientState(32888);
/* 473 */       GL11.glDisableClientState(32885);
/* 474 */       OpenGlHelper.func_176072_g(OpenGlHelper.field_176089_P, 0);
/*     */     } 
/*     */   }
/*     */ }


/* Location:              D:\fanbian\[D][龙之核心]DragonCore-2.6.0.3.jar!\eos\moe\dragoncore\hs.class
 * Java compiler version: 8 (52.0)
 * JD-Core Version:       1.1.3
 */